Production of modified image inventories

ABSTRACT

There are disclosed methods and apparatus for enhancing the image exposure of image inventories. A frame conversion and packaging machine assigns metadata to each frame of a digital video work. It takes objects that have been detected, recognized and assigned metadata to the objects by the frame slicing and packaging machine and enhances the image exposure and assigns new items of metadata to the enhanced-exposure modified images. The frame conversion and packaging machine then generates a cryptographic hash of the enhanced-exposure modified image&#39;s digital file. The frame conversion and packaging machine writes the hash to a node of a transaction processing network. Further, there are disclosed methods and apparatus for conversion of monochromatic image inventories to colored image inventories. A frame color-conversion and packaging machine assigns metadata to each frame of a digital video work. It takes objects that have been detected, recognized and assigned metadata to the objects by the frame slicing and packaging machine and converts the original monochromatic images to fully colorized images and assigns new items of metadata to the color-converted images. The frame color-conversion and packaging machine then generates a cryptographic hash of the color-converted modified image&#39;s digital file. The frame color-conversion and packaging machine writes the hash to a node of a transaction processing network.

NOTICE OF COPYRIGHTS AND TRADE DRESS

A portion of the disclosure of this patent document contains material which is subject to copyright protection. This patent document may show and/or describe matter which is or may become trade dress of the owner. The copyright and trade dress owner has no objection to the facsimile reproduction by anyone of the patent disclosure as it appears in the Patent and Trademark Office patent files or records, but otherwise reserves all copyright and trade dress rights whatsoever.

BACKGROUND Field

This disclosure relates to digital image processing.

Description of the Related Art

A movie is a collection of still images that are shown one after the other in quick succession. When the images are viewed in quick succession (approximately 24 images per second), the human brain interprets the images as a motion picture or movie. Therefore, a traditional movie that is shown in theaters is a display of images in quick succession on the order of approximately 24 images per second, or 129,600 images for a 90-minute movie (24 images per second×60 seconds per minute×90 minutes). Movies made in non-digital (e.g., photographic film) media can be converted to digital format, and the converted movies as well as movies originally made in digital format can have individual images extracted from the master digital media file. Artificial intelligence technology is applied to the content of the master digital media file to improve the exposure of individual images, whereby the principles of sensitometry are used in training the artificial intelligence algorithms that are applied to improve the image exposure. Upon completion of the process of improvement of image exposure, a filter can be applied to convert the individual images to a desired format (such as where a sepia filter is applied to convert black and white or color images to a sepia and white format). Artificial intelligence technology is applied to the content of the master digital media file to convert monochromatic (such as black and white) source images into color-converted images The improved and converted images can be assembled into a new, derivative movie work through linking the individual images into a movie, using the image numbering metadata to place each image in its respective order (e.g. image 2 follows image 1 and precedes image 3 and so on) in a new, derivative digital media file.

DESCRIPTION OF THE DRAWINGS

FIG. 1 is a block diagram of a system for production of image inventories.

FIG. 2 is a block diagram of a computing device.

FIG. 3 is a flowchart of a process for production of image inventories.

FIG. 4 is a block diagram of a frame slicing and packaging machine.

FIG. 5 is a block diagram of a system for production of modified image inventories having an improved image exposure and a monochromatic filter applied to the original images resulting from FIG. 1.

FIG. 6 is a flowchart of a process for production of modified image inventories being processed by artificial intelligence technology to improve the image exposure of the original source images followed by application of a filter to the images with improved exposure.

FIG. 7 is a block diagram of a system for production of modified image inventories being processed by artificial intelligence technology to improve the image exposure of the original source image inventories and then applying a monochrome filter to the improved exposure image inventories.

FIG. 8 is a flowchart of a process for assembling modified individual image inventories into derivative movie works.

FIG. 9 is a block diagram of a system for assembling modified individual image inventories into derivative movie works.

FIG. 10 is a block diagram of a system for production of modified image inventories consisting of black and white images converted to color images.

FIG. 11 is a flowchart of a process for conversion of black and white images to color image inventories through the application of artificial intelligence technology to the process of color conversion of the black and white images.

FIG. 12 is a block diagram of a system for production of color-converted image inventories where artificial intelligence technology is used to perform the color-conversion process of converting black and white images to color images.

FIG. 13 is a flowchart of a system for assembling color-converted image inventories into derivative movie works.

FIG. 14 is a block diagram of a system for assembling color-converted image inventories into derivative movie works.

Throughout this description, elements appearing in figures are assigned three-digit reference designators, where the most significant digit is the figure number and the two least significant digits are specific to the element. An element that is not described in conjunction with a figure may be presumed to have the same characteristics and function as a previously-described element having a reference designator with the same least significant digits.

DETAILED DESCRIPTION

Description of Apparatus

Referring now to FIG. 1 there is shown a block diagram of a system 100 for production of image inventories. The system 100 includes one or more film libraries 110 a, 110 b, 110 c, a frame slicing and packaging machine 120, an inventory of finished image products 130, and transaction processing nodes 140.

The film libraries 110 a, 110 b, 110 c each includes a collection of one or more whole movies, videos, and/or movie trailers, and/or portions thereof (e.g., clips), each of which is a sequence of frames having a respective still image. These items in a film library will be referred to herein as a base work. A base work may be a single frame, i.e., a still image, such as a picture or a drawing, in analog or digital format. The base works may be in analog or digital format, and each film library 110 a, 110 b, 110 c may be exclusive to a particular form or format of base work. Some film libraries may have base works in assorted forms and/or formats, related or unrelated. The frames of a base work may have various objects, such as people, animals, goods or text in a frame. A given frame may include audio and subtitles.

The frame slicing and packaging machine 120 produces the inventory of finished image products 130 and moves them into the transaction processing nodes 140. The frame slicing and packaging machine 120 may be a computer system, such as shown in FIG. 2, including one or more non-volatile machine-readable media storing a program having instructions which when executed by a processor will cause the processor to produce the inventory of finished image products 130. As shown in FIG. 4, the frame slicing and packaging machine 120 may include a frame metadata unit 410, an object detection unit 420, an object recognition unit 430, an object metadata unit 440, a hash unit 450, a watermark unit 460, a posting unit 470. These units 410, 420, 430, 440, 450, 460, 470 interact with a work in process subsystem 490, which may be the storage 240 (FIG. 2). The posting unit 470 may effectuate its work through the I/O interface 280 (FIG. 2).

Artificial intelligence may be incorporated into or used by the frame metadata unit 410, the object detection unit 420, the object recognition unit 430 and/or the object metadata unit 440. Accordingly, these units 410, 420, 430, 440 may be trained to perform the corresponding work prior to going into production. These units 410, 420, 430, 440 may employ quality assurance, such as use of human checks on samples of the production output, which may be used as feedback for refinement of the training.

Referring to FIG. 5 there is shown a block diagram of a system 500 for production of modified image inventories having the image exposure improved by application of artificial intelligence technology to the inventory of finished image products 130 of FIG. 1. The system 500 includes one or more finished image products 130, a frame conversion and packaging machine 520, an inventory of modified derivative video libraries 530, an inventory of modified derivative image products 510, and transaction processing nodes 140.

The inventory of finished image products 130 each are processed by artificial intelligence technology to improve the image exposure, whereby the principles of sensitometry are used to train the artificial intelligence algorithms that are applied to improve the image exposure. Upon completion of improvement of image exposure, a monochromatic filter may be applied to the exposure-improved images to further alter the original image format to a new format such as sepia and white, or to improve the image contrast such as by adding a yellow filter to the image, or other artistic alterations to the image such as antiquing, burning, dodging and the like.

The frame conversion and packaging machine 520 produces the inventory of modified image products 510 and inventory of modified video products 530 and moves them into the transaction processing nodes 140. The frame conversion and packaging machine 520 may be a computer system, such as shown in FIG. 2, including one or more non-volatile machine-readable media storing a program having instructions which when executed by a processor will cause the processor to produce the inventory of modified image products 510 or modified video products 530. As shown in FIG. 7, the frame conversion and packaging machine 520 may include a frame meta image processing unit 710, an image exposure smoothing unit 730, an improved image exposure metadata unit 740, a monochrome image enhancement unit 750, a hash unit 760, a watermark unit 770, a posting unit 780. These units 710, 730, 740, 750, 760, 770, 780 interact with a work in process subsystem 790, which may be the storage 240 (FIG. 2). The posting unit 780 may effectuate its work through the I/O interface 280 (FIG. 2). As shown in FIG. 9, the frame conversion and packaging machine 520 may include a frame image sequencing unit 910, a metadata unit 920, a hash unit 930, a watermark unit 940, a posting unit 950. These units 910, 920, 930, 940, 950 interact with a work in process subsystem 960, which may be the storage 240 (FIG. 2). The posting unit 950 may effectuate its work through the I/O interface 280 (FIG. 2).

Artificial intelligence may be incorporated into or used by the frame meta image processing unit 710, the frame image exposure smoothing unit 730 and/or the improved image exposure metadata unit 740. Accordingly, these units 710, 730, 740 may be trained to perform the corresponding work prior to going into production. These units 710, 730, 740 may employ quality assurance, such as use of human checks on samples of the production output, which may be used as feedback for refinement of the training.

The inventory of improved exposure image products 510 can be assembled into a video through use of the metadata attribute of image number. A video can be assembled by organizing a group of converted images according to their relative order through use of the metadata attribute of image number as an organizing index (e.g. image 1 precedes image 2 which is followed by image 3) and the organized converted images are then written to a new derivative video digital media file 530.

Referring to FIG. 10 there is shown a block diagram of a system 1000 for production of color-converted image inventories where monochromatic (e.g. black and white) source images are converted to color images by application of artificial intelligence technology to the inventory of finished image products 130 of FIG. 1. The system 1000 includes one or more finished image products 130, a frame color-conversion and packaging machine 1020, an inventory of color-converted derivative video libraries 1030, an inventory of color-converted derivative image products 1010, and transaction processing nodes 140.

The inventory of finished image products 130 each are processed by artificial intelligence technology to convert the source image from black and white to color. In this context, objects in the image are detected, recognized and colored by artificial intelligence technology using algorithms that have been developed through extensive training iterations. The use of artificial intelligence technology to perform the colorization effort can result in significant increases in accuracy of colorized result while realizing a corresponding significant reduction in the time it takes to perform the color-conversion of the source image.

The frame color-conversion and packaging machine 1020 produces the inventory of color-converted image products 1010 and inventory of color-converted video products 1030 and moves them into the transaction processing nodes 140. The frame color-conversion and packaging machine 1020 may be a computer system, such as shown in FIG. 2, including one or more non-volatile machine-readable media storing a program having instructions which when executed by a processor will cause the processor to produce the inventory of color-converted image products 1010 or color-converted video products 1030. As shown in FIG. 12, the frame color-conversion and packaging machine 1020 may include a frame object detection unit 1210, an object recognition and colorization unit 1220, an object metadata unit 1230, a hash unit 1240, a watermark unit 1250, a posting unit 1260. These units 1210, 1220, 1230, 1240, 1250, 1260 interact with a work in process subsystem 1290, which may be the storage 240 (FIG. 2). The posting unit 1260 may effectuate its work through the I/O interface 280 (FIG. 2). As shown in FIG. 14, the frame color-conversion and packaging machine 1020 may include a color-converted image sequencing unit 1410, a metadata unit 1420, a hash unit 1430, a watermark unit 1440, a posting unit 1450. These units 1410, 1420, 1430, 1440, 1450 interact with a work in process subsystem 1490, which may be the storage 240 (FIG. 2). The posting unit 1450 may effectuate its work through the I/O interface 280 (FIG. 2).

The inventory of color-converted image products 1010 each can be assembled into a video through use of the metadata attribute of image number. A video can be assembled by organizing a group of color-converted images according to their relative order through use of the metadata attribute of image number as an organizing index (e.g. image 1 precedes image 2 which is followed by image 3) and the organized color-converted images are then written to a new derivative video digital media file 1030.

Each finished image product in the inventory 130, 510, 530, 1010 and 1030 is a chattel good, capable of transfer on an individual basis.

The transaction processing nodes 140 may be in an information technology cloud 150, such as cloud storage. The transaction processing nodes may be in a blockchain.

Description of Processes

Referring now to FIG. 3 there is shown a flowchart 300 of a process for production of image inventories. The process 300 may be performed by the frame slicing and packaging machine 120 of FIG. 1 and FIG. 4, having as inputs the film libraries 110 a, 110 b, 110 c, etc. and manufacturing the inventory of finished image products 130. The flow chart 300 has both a start 305 and an end 395, but the process is cyclical in nature.

After starting 305, the process may include some preprocessing. This preprocessing may include extraction of base works from the film libraries into the work in process subsystem 490, and extraction of frames from a base work. The base work may be on an analog physical medium such as celluloid film, and preprocessing may include scanning the analog film medium into a digital file. If the base work is in analog form it may be converted to digital form. Preprocessing results in the base work, in digital form, being stored in the work in process subsystem 490.

During preprocessing, a human operator may select which frames should be included or excluded from further processing by the frame slicing and packaging machine. Frame selection criteria may include metadata as described below. The operator may be provided with options for frame selection, such as actors. For example, if the film Butch Cassidy and the Sundance Kid was being preprocessed, the operator could choose to process only the frames having Butch Cassidy (played by Paul Newman), or only the frames showing his face.

Next, metadata is assigned to each frame of the digital video work (step 310). This may be performed by the frame metadata unit 410. The frame metadata may include an identification of the work, provenance of the work, an identification of the processor, and an identification of the frame within the work. The metadata may include: colors in the frame; tags previously assigned to the frame that describe the frame; and geographic location represented in the frame. The provenance of the work may include: the identity of the frame slicing and packaging machine; the geographic location and timestamp where the frame was originally produced or subsequently processed; names or other identification of the people, equipment and firms which did the production and processing; language and subtitles; details of how the production and processing were performed; and details of errors and errata from the production and processing. Metadata for a given frame may include a sequence of images from immediate prior and or subsequent frames, or thumbnails of them, such as from a video or collection of still images. The metadata for each frame may be stored in a single file, with a CSV, XML or JSON format. The metadata from plural frames may be stored in a database, and the database may also include the correlated images.

Metadata for frames of video may include: frame number in the overall frame count for the movie or segment or video or video clip or trailer being processed; frame number in a given segment or fragment of the whole base work; frame number in its relative position in a given segment or fragment of the base work; license attributes such as whether electronic reproduction and/or hardcopy printing are permitted; genre; category; title of the base work; title of the scene; starting time code; ending time code; duration; frame count; producer; director; studio.

Metadata for frames of still images may include: title or identify of the collection or sub-collection of which the image is a part; artist; subject; category; album; session; sequence; session index; sequence index; camera used; number of photographs in the album, session and or sequence.

Next, objects in each frame are detected (step 320). This may be performed by the object detection unit 420. The object detection step may include differentiation from a series of frames, for example using a Kalman filter on the images to recognize objects in motion.

Next, the detected objects are recognized (step 330). This may be performed by the object recognition unit 430. These objects may be recognizable generically or with varying specificity. For example, an object may be recognized generically as a person, or as a specific type of person (e.g., adult, child, male, female, star actor, extra), or as a specific person (e.g., Mae West or John F. Kennedy). Recognition of audio objects may include speech to text conversion. Frames may include text objects, such as signs or labels in an image.

Next, metadata is assigned to the recognized objects (step 340). This may be performed by the object metadata unit 440. This metadata may include the location in the frame of the object and recognition of the object (i.e., identification of what the object is). The metadata may include an image of the object (e.g., an actor). The metadata of a person may include the actor's name. The metadata for audio objects may include spoken lines and sounds.

The metadata may link objects from within frames or across frames. For example, audio may be linked to the object in the image which produces the audio. In this way lines of dialogue may be linked to the actor speaking the lines. In this way, in Gone with the Wind, Rhett Butler (played by Clark Gable) may be linked to the line, “Frankly, my dear, I don't give a damn.” Likewise, recitations of “May the Force be with you” in a Star Wars film may be linked to each actor reciting this line. Or, the sound of a gunshot may be linked to the image of the gun, or to a person struck, such as in the move The Matrix, when Neo (played by Keanu Reeves) is shot.

Additional frame or object metadata may include whether it is a hero shot, where a famous actor appears in the frame; lead actors, where lead actors who may not be hero level actors, but are still the lead actors for the movie, appear in the frame; other actors that are not lead actors appear in the frame; famous locations, such as Monument Valley, Arizona, appearing in the frame; popular or famous objects, such as the Millennium Falcon, appearing in the frame; desired color composition appearing in the frame; quality of preservation or original source media, as whether it deteriorated or is damaged; pre-existing value of adjacent segments or frames.

Next, for each frame, a cryptographic hash is generated of the frame's image, the frame metadata, and the object metadata (step 350). This may be performed by the hash unit 450, which encrypts information items that uniquely identify a frame into a hash value that uniquely identifies the frame's image and information items about the frame's image. Thus, if even a single digital bit is changed in the files of the frame's image and information items about the frame's image that are input into the cryptographic hashing algorithm, the resulting hash value will be completely different from the hash value before the digital bit was changed. The hash unit 450 may produce a hash value from the authenticated representation of the image file along with the frame and object metadata. This hash value is more efficient and technologically superior to prior art index prints which aim to confirm that an individual print is part of a collection of prints shown in the index print.

The cryptographic hashing of the image from a frame with the metadata is performed to be able to objectively and transparently confirm authenticity of the image and the metadata into the future. This allows reliable chain of title and chain of custody and can support a reliable market for the image.

Next a watermark may be added to the hash (step 360) to protect the linkage of the image file with its hashed value from malicious tampering. This may be performed by the watermark unit 460. The watermarking unit 460 packages the hash value with the corresponding frame.

Next, the watermarked hash is written to a node of a transaction processing network (step 370). This may be performed by the posting unit 470 by generating a transaction to register the watermarked hash along with its record provenance into a blockchain. Writing to the node may occur under control of a smart contract. The hash values provided by the hash unit 410, or the packages from the watermarking unit 460, are recorded by the posting unit 470 into the transaction processing nodes 140, which may be in a secure transaction processing network, distributed ledger or blockchain, or other transaction processing environment. The distributed ledger may be an immutable distributed ledger.

Referring to FIG. 6 there is shown a flowchart 600 of a process for production of modified image inventories being processed by artificial intelligence technology to improve the image exposure of the original source images followed by optional application of a monochromatic filter to the images that have had their exposure improved. The process 600 may be performed by the modified image inventory packaging machine 520 of FIG. 5 and FIG. 7, having as inputs the inventory of finished image products 130 and manufacturing the modified image inventories 510. The flow chart 600 has both a start 605 and an end 695, but the process is cyclical in nature.

After starting 605, the process creates meta image files 610, 620 and 630 that are samples of the finished image products 130 with different exposures applied to the image. The process of creating meta image files may include copying the finished image products 130 into the work in process subsystem 790 of FIG. 7. The set of meta image files is stored in the work in process subsystem 790.

The next step in the process involves initial artificial intelligence processing of the meta images into a baseline meta image 640 which is roughly analogous to an average of the exposure values applied to meta images 610, 620 and 630 with no weighting for exposure. The baseline meta image 640 is stored in the work in process subsystem 790 of FIG. 7.

After the baseline meta image 640 has been created, the artificial intelligence exposure adjustment process moves to an iterative exposure adjustment between the three meta images where a copy of the baseline meta image is shifted between meta image exposure settings until the range of exposures in the image is optimized based on algorithms taught to the artificial intelligence processing subsystem 650. A further process of application of a monochromatic (e.g. sepia) tint to the optimized-exposure modified image can be processed at this stage by the image processing subsystem 650. The resulting optimized-exposure modified image is stored in the work in process subsystem 790 of FIG. 7.

Next, metadata is assigned to each optimized-exposure modified image that was processed by the image processing subsystem. This may be performed by the image metadata unit 740. The image metadata may include an identification of the range of exposure values that were used in the optimized-exposure modified image. Where a monochromatic tint was applied to the optimized-exposure modified image, the specific tint value would be included in the assigned metadata. The metadata for each optimized-exposure modified image may be stored in a single file, with a CSV, XML or JSON format. The metadata from plural optimized-exposure modified images may be stored in a database, and the database may also include the correlated images.

Next, for each optimized-exposure modified image, a cryptographic hash is generated of the image and image metadata. This may be performed by the hash unit 760, which encrypts information items that uniquely identify the modified image and image metadata into a hash value that uniquely identifies the modified image and information items about the modified image. Thus, if even a single digital bit is changed in the files of the modified image and information items about the modified image that are input into the cryptographic hashing algorithm, the resulting hash value will be completely different from the hash value before the digital bit was changed. The hash unit 760 may produce a hash value from the authenticated representation of the optimized-exposure modified image file along with the image metadata. This hash value is more efficient and technologically superior to prior art index prints which aim to confirm that an individual print is part of a collection of prints shown in an index print.

The cryptographic hashing of the modified image with the image metadata is performed to be able to objectively and transparently confirm authenticity of the modified image and the metadata into the future. This allows reliable chain of title and chain of custody and can support a reliable market for the image.

Next, a watermark may be added to the hash (step 680) to protect the linkage of the image file with its hashed value from malicious tampering. This may be performed by the watermark unit 770. The watermark unit 770 packages the hash value with the corresponding image.

Next, the watermarked modified image hash is written to a node of a transaction processing network (step 690). This may be performed by the posting unit 780 by generating a transaction to register the watermarked hash along with its record of provenance into a blockchain. Writing to the node may occur under control of a smart contract. The hash values provided by the hash unit 760, or the packages from the watermark unit 770, are recorded by the posting unit 780 into the transaction processing nodes 140, which may be in a secure transaction processing network, distributed ledger or blockchain, or other transaction processing environment. The distributed ledger may be an immutable distributed ledger.

Referring to FIG. 8 there is shown a flowchart 800 of a process for production of modified derivative video works having as inputs the modified image inventories 510 and manufacturing the modified derivative video works 530. The process 800 may be performed by the modified image inventory packaging machine 520 of FIG. 5 and FIG. 9, having as inputs the modified image inventories 510 and manufacturing the modified derivative video works 530. The flow chart 800 has both a start 805 and an end 855, but the process is cyclical in nature.

After starting 805, the process creates an indexed modified image collection by organizing the modified image inventory by image number metadata where image number 1 precedes image number 2, which in turn is followed by image number 3 and so on until the entire modified image collection is sequenced according to image number. The process of creating the sequenced modified image collection may include copying the modified image files into the work in process subsystem 960 of FIG. 9. The set of sequenced modified image files is stored in the work in process subsystem 960.

Next, metadata is assigned to the sequenced modified images file. This may be performed by the metadata unit 920. The sequenced image collection metadata may include the endorsement of the modified work by the owner of original work's copyright, the range (e.g. 1 through 135,000) of images that have been sequenced into the video, the date and time the sequencing occurred, the location where the sequencing occurred and other items of information relevant to the manufacture of the modified video work. The metadata for each sequenced optimized-exposure modified image may be stored in a single file, with a CSV, XML or JSON format. The metadata from plural sequenced optimized-exposure modified images may be stored in a database, and the database may also include the correlated images.

Next for each sequenced optimized-exposure modified images file, a cryptographic hash is generated of the images and the image metadata. This may be performed by the hash unit 930, which encrypts information items that uniquely identify the sequenced modified images and image metadata into a hash value that uniquely identifies the sequenced modified images and information items about the sequenced modified images. Thus, if even a single digital bit is changed in the files of the sequenced modified images and information items about the sequenced modified images that are input into the cryptographic hashing algorithm, the resulting hash value will be completely different from the hash value before the digital bit was changed. The hash unit 930 may produce a hash value from the authenticated representation of the sequenced optimized-exposure modified images along with the image metadata. This hash value is more efficient and technologically superior to prior art index prints which aim to confirm that an individual print is part of a collection of prints shown in an index print. The cryptographic hashing of the sequenced modified images with the image metadata is performed to be able to objectively and transparently confirm authenticity of the sequence of modified images and the metadata into the future. This allows reliable chain of title and chain of custody and can support a reliable market for the modified movies.

Next, a watermark may be added to the hash (step 840) to protect the linkage of the sequenced modified image file with its hashed value from malicious tampering. This may be performed by the watermark unit 940. The watermark unit 940 packages the hash with the corresponding sequenced modified image file.

Next, the watermarked sequenced modified image hash is written to a node of a transaction processing network (step 850). This may be performed by the posting unit 950 by generating a transaction to register the watermarked hash along with its record of provenance into a blockchain. Writing to the node may occur under control of a smart contract. The hash values provided by the hash unit 930, or the packages from the watermark unit 940, are recorded by the posting unit 950 into the transaction processing nodes 140, which may be in a secure transaction processing network, distributed ledger or blockchain, or other transaction processing environment. The distributed ledger may be an immutable distributed ledger.

Referring to FIG. 11 there is shown a flowchart 1100 of a process for production of color-converted image inventories being processed by artificial intelligence technology to detect objects in the images, recognize and colorize the objects in the images and assign metadata to the recognized and colorized objects in the images. The process 1100 may be performed by the frame color-conversion and packaging machine 1020 of FIG. 10 and FIG. 12, having as inputs the inventory of finished image products 130 and manufacturing the color-converted image product inventories 1010. The flow chart 1100 has both a start 1105 and an end 1165, but the process is cyclical in nature.

After starting 1105, the process uses artificial intelligence to detect objects in the image 1110. The process of detecting objects may include copying the finished image products 130 into the work in process subsystem 1290 of FIG. 12. The set of detected objects image files are stored in the work in process subsystem 1290.

The next step in the process uses artificial intelligence to recognize and colorize 1120 the detected objects 1110. The set of colorized objects that are the result of 1120 performing its processing are stored in the work in process subsystem 1290 of FIG. 12.

Next, metadata is assigned to each colorized image object that was processed by the image color-conversion subsystem. This may be performed by the image metadata unit 1130. The image metadata may include an identification of the images that were detected, the color(s) that were assigned to the detected images and any other actions that were performed by the artificial intelligence technology in processing the color conversion functions. The metadata for each color converted image may be stored in a single file, with a CSV, XML or JSON format. The metadata from plural color-converted images may be stored in a database, and the database may also include the correlated images.

Next, for each color-converted image, a cryptographic hash is generated of the image and image metadata. This may be performed by the hash unit 1140, which encrypts information items that uniquely identifies the color-converted image and image metadata into a hash value. Thus, if even a single digital bit is changed in the files of the color-converted image and image metadata that are input into the cryptographic hashing algorithm, the resulting hash value will be completely different from the hash value before the digital bit was changed. The hash unit 1140 may produce a hash value from the authenticated representation of the color-converted image file along with the image metadata. This hash value is more efficient and technologically superior to prior art index prints which aim to confirm that an individual print is part of a collection of prints shown in an index print.

The cryptographic hashing of the color-converted image with the image metadata is performed to be able to objectively and transparently confirm authenticity of the modified image and the metadata into the future. This allows reliable chain of title and chain of custody and can support a reliable market for the image.

Next, a watermark may be added to the hash (step 1150) to protect the linkage of the image file with its hashed value from malicious tampering. This may be performed by the watermark unit 1250. The watermark unit 1250 packages the hash value with the corresponding image.

Next, the watermarked color-converted image is written to a node of a transaction processing network (step 1160). This may be performed by the posting unit 1260 by generating a transaction to register the watermarked hash along with its record of provenance into a blockchain. Writing to the node may occur under control of a smart contract. The hash values provided by the hash unit 1240, or the packages from the watermark unit 1250, are recorded by the posting unit 1260 into the transaction processing nodes 140, which may be in a secure transaction processing network, distributed ledger or blockchain or other transaction processing environment. The distributed ledger may be an immutable distributed ledger.

Referring to FIG. 13 there is shown a flowchart 1300 of a process for production of color-converted video works having as inputs the color-converted image inventories 1010 and manufacturing the color-converted derivative video works 1030. The process 1300 may be performed by the color-conversion and packaging machine 1020 of FIG. 10 and FIG. 14, having as inputs the color-converted image inventories 1010 and manufacturing the color-converted derivative video works 1030. The flow chart 1300 has both a start 1305 and an end 1355, but the process is cyclical in nature.

After starting 1305, the process creates an indexed image collection by organizing the color-converted image inventory by image number metadata where image number 1 precedes image number 2, which in turn is followed by image number 3 and so on until the entire color-converted image collection is sequenced according to image number. The process of creating the sequenced color-converted image collection may include copying the color-converted image files into the work in process subsystem 1490 of FIG. 14. The set of sequenced color-converted image files is stored in the work in process subsystem 1490.

Next, metadata is assigned to the sequenced color-converted images file. This may be performed by the metadata unit 1320. The sequenced image collection metadata may include the endorsement of the color-converted work by the owner of the original work's copyright, the range (e.g. 1 through 135,000) of images that have been sequenced into the video, the date and time the sequencing occurred, the location where the sequencing occurred and other items of information relevant to the manufacture of the color-converted video work. The metadata or each sequenced color-converted image may be stored in a single file, with a CSV, XML or JSON format. The metadata from plural sequenced color-converted images may be stored in a database, and the database may also include the correlated images.

Next for each sequenced color-converted images file, a cryptographic hash is generated of the images and the image metadata. This may be performed by the hash unit 1430, which encrypts information items that uniquely identify the sequenced color-converted images and image metadata into a hash value. Thus, if even a single digital bit is changed in the files of the print and information items about the sequenced color-converted images and image metadata that are input into the cryptographic hashing algorithm, the resulting hash value will be completely different from the hash value before the digital bit was changed. The hash unit 1430 may produce a hash value from the authenticated representation of the sequenced color-converted images along with the image metadata. This hash value is more efficient and technologically superior to prior art index prints which aim to confirm that ah individual print is part of a collection of prints shown in an index print. The cryptographic hashing of the sequenced color-converted images with the image metadata is performed to be able to objectively and transparently confirm authenticity of the sequence of color-converted images and the metadata into the future. This allows reliable chain of title and chain of custody and can support a reliable market for the color-converted movies.

Next, a watermark may be added to the hash (step 1340) to protect the linkage of the sequenced color-converted image file with its hashed value from malicious tampering. This may be performed by the watermark unit 1440. The watermark unit 1440 packages the hash with the corresponding sequenced color-converted image file.

Next, the watermarked sequenced color-converted image hash is written to a node of a transaction processing network (step 1350). This may be performed by the posting unit 1450 by generating a transaction to register the watermarked hash along with its record of provenance into a blockchain. Writing to the node may occur under control of a smart contract. The hash values provided by the hash unit 1430, or the packages from the watermark 1440, are recorded by the posting unit 1450 into the transaction processing nodes 140, which may be in a secure transaction processing network, distributed ledger or blockchain or other transaction processing environment. The distributed ledger may be an immutable distributed ledger.

The transaction processing nodes may support queries. Thus, an individual who might want to purchase an image could make a query to confirm the authenticity of the image.

FIG. 2 is a block diagram of a computing device 200. A computing device as used herein refers to any device with a processor, memory and a storage device that may execute instructions including, but not limited to, personal computers and server computers. These computing devices may run an operating system, including variations of the Linux, Microsoft Windows, and Apple Mac operating systems.

The computing device 200 may be representative of the frame slicing and packaging machine 120 (FIG. 1). The computing device 200 may include software and/or hardware for providing functionality and features described herein. The computing device 200 may therefore include one or more of: logic arrays, memories, analog circuits, digital circuits, software, firmware and processors. The hardware and firmware components of the computing device 200 may include various specialized units, circuits, software and interfaces for providing the functionality and features described herein. For example, a global positioning system (GPS) receiver or similar hardware may provide location-based services.

The computing device 200 has a processor 210 coupled to a memory 220, storage 240, a network interface 260 and an I/O interface 280. The processor 210 may be or include one or more microprocessors, field programmable gate arrays (FPGAs), application specific integrated circuits (ASICs), programmable logic devices (PLDs) and programmable logic arrays (PLAs).

The memory 220 is a non-transitory storage medium and may be or include RAM, ROM, DRAM, SRAM and MRAM, and may include firmware, such as static data or fixed instructions, BIOS, system functions, configuration data, and other routines used during the operation of the computing device 200 and processor 210. The memory 220 also provides a storage area for data and instructions associated with applications and data handled by the processor 210. As used herein the term memory corresponds to the memory 220 and explicitly excludes transitory media such as signals or waveforms. The techniques disclosed herein may be implemented with machine readable storage media in a storage device included with or otherwise coupled or attached to a computing device. That is, the software may be stored in electronic, machine readable media.

The storage 240 provides non-volatile, bulk or long-term storage of data or instructions in the computing device 400. The storage 240 may take the form of a magnetic or solid state disk, tape, CD, DVD, or other reasonably high capacity addressable or serial storage medium. Multiple storage devices may be provided or available to the computing device 200. Some of these storage devices may be external to the computing device 200, such as network storage or cloud-based storage. In some cases, such as those involving solid state memory devices, the memory 220 and storage 240 may be a single device.

The network interface 260 includes an interface to a network such as a network that can be used to communicate calls, signals, streams, arrays, flagged samples and feedback described herein. The network interface 260 may be wired or wireless.

The I/O interface 280 interfaces the processor 210 to peripherals (not shown) such as displays, video and still cameras, microphones, keyboards and USB devices.

In some cases, storage 240 is a non-volatile machine-readable storage medium that includes all types of computer readable media, including magnetic storage media, optical storage media, and solid state storage media. It should be understood that the software can be installed in the frame slicing and packaging machine 120.

The technologies described herein provide various technological improvements to computer performance and efficiency. For example, the frame slicing and packaging machine 120 has performance enhancements over the prior art that results in more efficient production of an inventory of image products from frames of a digital video work. For example, the technologies described are technological improvements over those of the past because they provide verifiable provenance of images of frames that have been extracted from a motion picture, short video such as a music video, video clip, movie trailer, or individual still photographs. It is believed that there is no mechanism in the prior art to extract individual frames and concurrent with the extract, provide proof of authenticity or provenance of the extracted frames and metadata about the extracted frames.

Within this description, the term engine means a collection of hardware, which may be augmented by firmware and/or software, that performs the described functions. An engine may typically be designed using a hardware description language (HDL) that defines the engine primarily in functional terms. The HDL design may be verified using an HDL simulation tool. The verified HDL design may then be converted into a gate netlist or other physical description of the engine in a process commonly termed synthesis. The synthesis may be performed automatically using a synthesis tool. The gate netlist or other physical description may be further converted into programming code for implementing the engine in a programmable device such as PLD, FPGA or PLA. The gate netlist or other physical description may be converted into process instructions and masks for fabricating the engine within an ASIC.

Some technologies described for the frame slicing and packaging machine 120 and/or the computing device 200 include units. Within this description, the term unit means a collection of hardware, firmware, and/or software, which may be on a larger scale than an engine. For example, a unit may contain multiple engines, some of which may perform similar functions in parallel. The terms engine and unit do not imply any physical separation or demarcation. All or portions of one or more units and/or engines may be collocated on a common card, such as a network card, or within a common FPGA, ASIC, or other circuit device.

Closing Comments

Throughout this description, the embodiments and examples shown should be considered as exemplars, rather than limitations on the apparatus and procedures disclosed or claimed. Although many of the examples presented herein involve specific combinations of method acts or system elements, it should be understood that those acts and those elements may be combined in other ways to accomplish the same objectives. With regard to flowcharts, additional and fewer steps may be taken, and the steps as shown may be combined or further refined to achieve the methods described herein. Acts, elements and features discussed only in connection with one embodiment are not intended to be excluded from a similar role in other embodiments.

As used herein, “plurality” means two or more. As used herein, a “set” of items may include one or more of such items. As used herein, whether in the written description or the claims, the terms “comprising”, “including”, “carrying”, “having”, “containing”, “involving”, and the like are to be understood to be open-ended, i.e., to mean including but not limited to. Only the transitional phrases “consisting of” and “consisting essentially of”, respectively, are closed or semi-closed transitional phrases with respect to claims. Use of ordinal terms such as “first”, “second”, “third”, etc., in the claims to modify a claim element does not by itself connote any priority, precedence, or order of one claim element over another or the temporal order in which acts of a method are performed, but are used merely as labels to distinguish one claim element having a certain name from another element having a same name (but for use of the ordinal term) to distinguish the claim elements. As used herein, “and/or” means that the listed items are alternatives, but the alternatives also include any combination of the listed items. 

It is claimed:
 1. An apparatus comprising a non-volatile machine-readable medium storing a program having instructions which when executed by a processor will cause the processor to produce an inventory of optimized-exposure modified image products from frames of a digital video work, each frame comprising a still image in sequence in the work, the instructions of the program for: assigning metadata to each optimized-exposure modified image of the digital video work, the image metadata including an identification of the work, provenance of the work, an identification of the optimized image exposure values present in the work, and an identification of any monochromatic color effects applied to the images present in the work; detecting objects in each frame's image; recognizing the objects; assigning metadata to the recognized objects, including recognition of the object; for each frame, generating a cryptographic hash of, altogether, the frame's image, the frame metadata, and the object metadata; adding a watermark to the cryptographic hash; and writing the watermarked cryptographic hash to a node of a transaction processing network.
 2. The apparatus of claim 1 further comprising extracting from a physical medium a sequence of analog form images and converting them to digital form.
 3. The apparatus of claim 1 wherein the digital video work is a whole movie.
 4. The apparatus of claim 1 wherein the digital video work is a portion of a movie.
 5. The apparatus of claim 1 wherein at least one recognized object is at least one of a person, an animal and a good.
 6. The apparatus of claim 5 wherein metadata of a person comprises an actor's name.
 7. The apparatus of claim 1 wherein the frame metadata includes color compositions within the frame.
 8. The apparatus of claim 1 wherein the frame metadata includes tags describing the frame's image, a geographic location where the frame's image was filmed, a geographic location of where the frame's image is represented to be in the work.
 9. The apparatus of claim 1 wherein the frame includes audio, and the instructions are further for detecting objects in the frame's audio.
 10. The apparatus of claim 9, wherein the metadata for audio objects includes spoken lines and sounds.
 11. The apparatus of claim 1 wherein the transaction processing network is a blockchain ledger.
 12. The apparatus of claim 1 wherein the watermarked cryptographic hash is an individual file, such that there is one file produced from each frame of the digital video work.
 13. The apparatus of claim 1 wherein the image number metadata is used to create a video by arranging the image products into a derivative video product.
 14. An apparatus comprising a non-volatile machine-readable medium storing a program having instructions which when executed by a processor will cause the processor to produce an inventory of color-converted image products from frames of a digital video work, each frame comprising a still image in sequence in the work, the instructions of the program for: assigning metadata to each color-converted image of the digital video work, the image metadata including an identification of the work, provenance of the work, an identification of the color-conversion process performed in production of the work; detecting objects in each frame's image; recognizing the objects; coloring the objects; assigning metadata to the objects, including color applied to the object and recognition of the object; for each frame, generating a cryptographic hash, altogether, of the frame's image, the frame metadata, and the object metadata; adding a watermark to the cryptographic hash; and writing the watermarked cryptographic hash to a node of a transaction processing network.
 15. The apparatus of claim 14 further comprising extracting from a physical medium a sequence of analog form images and converting them to digital form.
 16. The apparatus of claim 14 wherein the digital video work is a whole movie.
 17. The apparatus of claim 14 wherein the digital video work is a portion of a movie.
 18. The apparatus of claim 14 wherein at least one recognized object is at least one of a person, an animal and a good.
 19. The apparatus of claim 18 wherein metadata of a person comprises an actor's name.
 20. The apparatus of claim 14 wherein the frame metadata includes color compositions within the frame.
 21. The apparatus of claim 14 wherein the frame metadata includes tags describing the frame's image, a geographic location where the frame's image was filmed, a geographic location of where the frame's image is represented to be in the work.
 22. The apparatus of claim 14 wherein the frame includes audio, and the instructions are further for detecting objects in the frame's audio.
 23. The apparatus of claim 22, wherein the metadata for audio objects includes spoken lines and sounds.
 24. The apparatus of claim 14 wherein the transaction processing network is a blockchain ledger.
 25. The apparatus of claim 14 wherein the watermarked cryptographic hash is an individual file, such that there is one file produced from each frame of the digital video work.
 26. The apparatus of claim 14 wherein the image number metadata is used to create a video by arranging the image products into a derivative video product. 